using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsoft.Xna.Framework; using Microsoft.Xna.Framework.Graphics; namespace SuperPolarity { class Bullet : Actor { protected ParticleEngine particleEngine; public Bullet(Game newGame) : base(newGame) { } ~Bullet() { particleEngine = null; } public override void Initialize(Texture2D texture, Vector2 position) { base.Initialize(texture, position); particleEngine = ParticleEffectFactory.CreateBullet(position); } public override void Update(GameTime gameTime) { Velocity.X = (float)(MaxVelocity * Math.Cos(Angle)); Velocity.Y = (float)(MaxVelocity * Math.Sin(Angle)); Position += Velocity; particleEngine.Update(); particleEngine.EmitterLocation = Position; } public override void Draw(SpriteBatch spriteBatch) { base.Draw(spriteBatch); particleEngine.Draw(spriteBatch); } } }